Tips for Starting Dapp Development
Welcome to dapp Development
Welcome to one of the most exciting areas in computer programming. The potential growth of the blockchain field is matched only by the professional development of those engaged in it. Why? To understand decentralized application (dapp) development, you can touch upon any (or all!) of the following fields:
If this is overwhelming, that’s okay! You can jump right into the fire and start hacking. Here are a few pointers before you start diving into resources, repositories, and documentation.
- Beware the cost of being on the bleeding edge More so than typical niche programming, dapp and blockchain development moves very quickly. Deep into learning, you may find bugs in code repositories, 404s on a documentation site, or, perhaps, no documentation at all. Rather than seeing this as a deterrent, see it as an invitation to go deeper. Ping the developer, find the Discord / Gitter / Telegram channel, post on Stack Overflow or Reddit — you may be surprised at the rate of response and openness of the community. Fair warning: You may not be able to report an issue. The team may ask you to join in their efforts in fixing it.
- Dapp frontend isn’t just frontend. Some people say blockchain today is where internet development was in the 1990s. That may be true, but for dapp developers, the relevant time analogy is probably decades earlier. Memory management, immutable resources, protocol-level cryptography and limited (for now) transaction bandwidth all create a level of constraint unusual in our era of projects typically spun-up with
npm install && npm run
. Due to the nature of blockchain work cycles, even simple frontend actions may require more “backend” knowledge than in more conventional programming settings. Be patient — once you’ve figured out your preferred dapp development setup, spinning up projects becomes second nature. - The learning curve may be daunting, but the barrier to entry is low. The blockchain and dapp developer community is one of the most open and accepting ones around. All communities have their grumps, of course, but if you do the work, put in the effort, it will be noticed. Projects welcome pull requests from outsiders and support will be there if you’ve exhausted every other resource. We’re working on creating a better world and can use all the help we can get. We’re just glad you’re here.
What are you waiting for? Here are some resources to start you off. We divided them into two sections: learning dapp development and keeping up with dapp development. The first resources help you understand the similarities and differences from Web 2 to Web 3 (as blockchain is commonly called). The second are resources to keep up with that development (see Pointer #1 above!)
Learning Dapp Development
Learn the developer tools
- CryptoZombies
- Full stack dapp tutorial series
- Infura Docs
- Truffle Suite Docs
- Truffle tutorials
- Parity Wiki
- Geth docs
- Remix
- OpenZeppelin Docs
- Ethernaut - A game that teaches security
- Capture the Ether - A game that teaches security
Learn the Basics of Development
- Full stack dapp tutorial series
- Truffle tutorials
- Dapp University
- ConsenSys Academy Developer Program On-Demand course
- What is Ethereum?
- Read Mastering Ethereum
- OpenZeppelin Learn Docs
Get Involved with Hackathons
Hackathons take place at blockchain conferences and meetups all over the world. Chances are you can’t hop on a plane on a moment’s notice, but some conferences or projects host virtual hackathons open to anyone with an internet connection.
- Gitcoin hackathons
- Coinlist hackathons
- ETHGlobal’s new ETHOnline remote hackathons
Meet-ups
Some meetups are more about trading “investment” advice but a good technical meetup in your area is an excellent way to meet other people interested in Dapp development.
- BUIDL Network
- Meetup.com - Type “blockchain” and your area to see if anything’s available. It’s how I found my first Ethereum meetup.
- ETH Global - Ethereum hackathons and meetups
Keeping Up with Development
Social Media
Dapp development encourages network decentralization, and it also embodies it. Developers are located everywhere in the world! As such, social media has become important to keep people in touch across time zones. Besides the popular platforms, you may be less familiar with platforms such as Telegram, Discord and Gitter.
Reddit:
- /r/ethereum
- /r/ethdev
- /r/ethfinance
- /r/ethereumnoobies
Twitter:
- Bankless: How to Use Crypto Twitter
- EthHug
- CodeFi
- ConsenSys Labs
- Universal Login
- MetaCartle
- Ethereum Foundation
- DAI Dao
- ETHGlobal
- MakerDao
- DeFi Pulse
- DeFi Prime
- Uniswap
- Compound
- Gnosis
- Nexus Mutual
- Argent
- The Token Analyst
- EF Devcon account
- Status
- OpenZeppelin
Newsletters
Podcasts
- Kauri original title: Tips for Starting Dapp Development
- Kauri original link: https://kauri.io/tips-for-starting-dapp-development/a6f8cae18e574e1595bd870010100c80/a
- Kauri original author: Coogan (@cooganb)
- Kauri original Publication date: 2020-02-03
- Kauri original tags: getting-started, dapp
- Kauri original hash: QmYA4YEm6i1JcFXiV4aZQgjZtVE64LiNWWeqmitd135PG3
- Kauri original checkpoint: Qmekp5iiDi5N5M4KdtAVGBEJEF3ahMgWYZJqL7s1qmkQ9g